/*
 * Copyright (C), sensetime 2022
 * Author: dingjinfeng
 * Date: 2022/12/29 14:35
 * Description:
 */
package com.senseauto.autorecordlib.mediacodec;

public interface IVideoEncoder {

    /***
     * 初始化编码器
     * @param outPath 文件输出位置
     * @param width 视频宽度
     * @param height 视频高度
     * @param frameRate 帧率
     * @param bitRate 比特率
     */
    void init(String outPath,
              int width,
              int height,
              int frameRate,
              int bitRate);

    void start();

    void stop();

    void release();

    /**
     * 编码
     * @param data 支持yuv420sp、yuv420p
     * @param presentationTimeUs 帧时间
     */
    void encode(byte[] data, long presentationTimeUs);
}
